<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<script>
  // function Hd() {
  //   let n = 1;
  //   this.sum = function () {
  //     console.log(++n)
  //   }
  // }

  let a = new Hd();
  a.sum();
  a.sum();

  // 理解构造函数
  function Hd() {
    let n = 1;

    function sum() {
      console.log(++n)
    }

    // 这个构造函数就相当于返回了一个sum函数，因为sum用到了 n 变量，所以n变量就不会消失，n就和该函数成为了整体
    return {
      sum: sum
    }
  }


</script>
</body>
</html>